The present invention relates to a computer system virtually managing or controlling storage areas of a plurality of storage systems as one logical storage area or a plurality of logical storage areas.
Recently, the amount of data used in an information processing system has been considerably increased and hence storage management expenses imposed on the user have been increased. To cope with this problem, a report “Virtualizing the SAN” published on Jul. 5, 2000, pp. 1-20 from an investigating company called “Morgan Keegan” describes a system including a plurality of storage systems. In the system, storage areas of the storage systems are virtualized into logical storage areas (virtual volumes). By allocating the virtual volumes to users (computers), the storage management expenses of the system users are reduced. The report describes two approaches on a system configuration and a method to implement the virtualization.
In this specification, a storage system is used to indicate a single storage such as a disk device and a set of “just bunch of disks (JBOD)” and a controller thereof as well as a set of a plurality of storages such as redundant array of inexpensive disks (RAID) and a controller thereof.
The first approach provides a virtualization system in which a computer connected between a computer (to be called a server hereinbelow) using the storage system and the storage system manages or controls a correspondence between storage areas of the storage system and virtual volumes indicated to the server. In the system, having received an access request to a virtual volume, the computer converts the request to an access request to a storage area of the storage system and issues the request to the storage system.
The second approach provides a virtualization system including a virtualization or virtualizing computer, which controls a correspondence between storage areas of the storage system and an area of a virtual volume indicated to the user. In the system, to access a virtual volume, a server issues an inquiry to the virtualization computer to obtain a position or an address of a storage area of a storage system corresponding to the virtual volume to be accessed. In response to the inquiry, the virtualization computer sends an address in the storage area to the server according to information managed by the virtualization computer. Having received the address from the virtualization computer, the server accesses the area of the storage system using the address.
According to the second approach, the server must collaborate with the virtualization computer. In consequence, it is necessary to prepare a collaborative function for the virtualization computer in association with many types of operating systems (OS) of servers. However, considerably many types of general operating systems are available in the present stage of art. It is therefore not practical to cope with all operating systems.
On the other hand, when compared with the second approach, the first approach is advantageous because it is not required to cope with the respective operating systems. However, the computer connected to the servers and the storage systems executes processing such as the address translation and the issuance of a request to a storage system. This leads to a problem that a limit of performance of the computer becomes a limit of performance of the system. For example, saving data from a storage system to another storage system imposes quite a heavy load on the computer. In this case, access performance of the overall system is also reduced. If the computer implementing the virtualization fails, the entire storage system cannot be used.